package com.co.notaweb.entities;

import java.util.List;

import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.NamedQueries;
import javax.persistence.NamedQuery;
import javax.persistence.OneToMany;

/**
 * @author PC
 * @version 1.0
 * @created 13-nov-2011 12:14:27
 */
@Entity
@NamedQueries({ @NamedQuery(name = "Materia.allMateriasByCursoDocente", query = "SELECT m FROM  Materia m INNER JOIN m.asignaciones a WHERE a.curso.id = :idCurso AND a.docente.id = :idDocente"),
	@NamedQuery(name = "Materia.consultarAllMaterias", query = "SELECT m FROM  Materia m")})
public class Materia {
	@Id
	@GeneratedValue(strategy = GenerationType.AUTO)
	private long id;
	
	private String nombre;
	
	private String descripcion;

	@OneToMany(mappedBy = "materia")
	private List<Asignacion> asignaciones;

	public Materia() {

	}

	public long getId() {
		return id;
	}

	public void setId(long id) {
		this.id = id;
	}

	public String getNombre() {
		return nombre;
	}

	public void setNombre(String nombre) {
		this.nombre = nombre;
	}

	public String getDescripcion() {
		return descripcion;
	}

	public void setDescripcion(String descripcion) {
		this.descripcion = descripcion;
	}

	public List<Asignacion> getAsignaciones() {
		return asignaciones;
	}

	public void setAsignaciones(List<Asignacion> asignaciones) {
		this.asignaciones = asignaciones;
	}

}